iT邦幫忙

3

YOLO實時檢測提醒司機保持車距— ROG FLOW Z13 GZ301VV實測

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20230607/20144614vEDTZxoYsH.jpg

目前無論是電動車還是新車,無論是對面的蔚小理(NIO、小鵬、理想、比亞迪),還是歐美的新車,或多或少都有相關的保護行進間的車子之應用,比如降低車速、移動車身等。

要做這些應用,首先要確立的是機器必須學會檢測物體,如何用主要的表達函數來提高效果,降低損失函數的值,用什麼激活函數和逼近函數等等在。但這些都需要時間和耐心;如果你想涉足機器學習,可以先做一些應用體驗,然後再優化創建機器學習模塊。

下面是一個使用YOLO檢測模塊提醒司機保持安全車距的應用,於實際道路上測試。(Python Coding) 使用Asus ROG Flow Z13 GZ301VV在實際道路上測試惡劣天氣和弱光的情況:
Yes

其他情境,晚上車多光線不佳,用同一台機器模擬是否可以提醒司機保持車距:
https://youtu.be/vAe6PHg-NWA

有優點也有缺點,後面會講到。

使用Yolo做實時檢測實驗,實驗目的是提醒用戶在車流中保持距離。
出於以下動機:

  1. 因為換了電動機車,不知道為什麼新車的音量比舊車低很多,操作一段時間後感覺像坐捷運一樣快睡著了。
  2. 騎車想看環境、找店鋪、找地址,但不能100%關注前方;轉頭至側面和後方與第三人說話等等。
  3. 開車時低頭撿東西時、或手機響了想按一下、回頭和被載人小孩說話等等。

接下來,描述應用程序的流程內容。

這里首先(鏈接)參考改善YOLO的使用
然後判斷方式如下:
https://ithelp.ithome.com.tw/upload/images/20230607/20144614LZnFH0IGgR.jpg

打開攝像頭,即時抓取圖像,傳給YOLO模塊進行判斷。
紫色決策塊 “detect object Is in Range of detecting” 判斷物體是否滿足檢測條件。檢測到的條件將有兩個線性方程。如果兩者都在這個線性方程後面的塊中,即滿足要求被檢測到,立即用框顏色標記。

動態設置兩個線性方程式,下圖左邊綠線,右邊藍線,線性方程 “ ax+b = y”。 所謂動態,為隨鏡頭狀況調整參數,自動算出二條線的個別 a、b 值,供接下來計算判斷。

https://ithelp.ithome.com.tw/upload/images/20230607/20144614uhgvocOxlL.jpg

從兩側駛來的汽車通常不會越過這兩條線。即使有,在線路中的比例也太小,不能滿足檢測要求;

https://ithelp.ithome.com.tw/upload/images/20230607/20144614lZmN1DIk4o.jpg

如果左側車往前走的越遠越快,勢必面積越來越小,對我們相對越安全。

https://ithelp.ithome.com.tw/upload/images/20230607/20144614eWCEuA1uVv.jpg

接下來解釋一下流程圖中紅色的決策塊,“Whether the car object in this screen is a car object in the previous round of screen?”,判斷當前對像是否也存在於上一輪畫面中,檢測到,如果是,保存這輛車的對象;不管是不是,都必須送到下一個綠色決策塊。

以下示意同一物件的判斷,前提是擷取的螢幕每幀是連續的。紅色表示下一幀的物件,藍色表示原物件。在連續圖片的狀況下,紅色重疊在藍色原物件,勢必是同一物件。

https://ithelp.ithome.com.tw/upload/images/20230607/20144614VokEb2obWq.jpg

接下來是流程圖中綠色的決策塊,“Whether the vehicle object is within the dangerous vehicle distance and is closer to you than the previous vehicle object?” 如果危險車距越來越近,則會進行標記提示。

如何判斷危險區域的車輛物體離你越來越近?可以實現計算的面積。如果物體的可視面積越來越大,也意味著物體在物理上離自己越來越近。

詳細過程還是需要根據上面的流程圖。
最後,如果畫面上的每個物件都判斷完畢,馬上從攝影機取即時影像,做新的迭代過程。

因此,非常需要高速計算設備的輔助。恰好華碩的遊戲平板也能滿足這種需求。
型號為華碩 ROG Flow Z13 GZ301VV
下面的鏈接顯示計算需要散熱。這款電競平板設計巧妙,出風口朝上,可以將高速計算芯片和GPU合二為一。

Yes

最後總結一下不足和需要改進的地方:

  1. 車子的震動還是會影響判斷,但是如果誤差範圍設置得當,影響不會太大。
  2. 鏡頭的廣角,拍攝的圖像是否會失真,需要調整。鏡頭只有一個判斷前方,如果要判斷車身周圍需要多顆鏡頭輔助。
  3. Yolo模塊很棒,但是晚上偶爾會出現一點誤判,如何減少誤判需要調整。
  4. 等紅綠燈時,如果車在前排且靠近斑馬線,可能會考慮到前方行駛的車輛和行人。
    原因是無法判斷自己的車輛是否已經停止,需要車商提供API獲取車輛相關信息,如車速、控制速度等。
    5、應用的判斷參數可以還是要優化的。

優點是:

  1. 在YOLO模塊的基礎上,前方主車提醒司機保持車距,精度高。
  2. 在行動的時候,YOLO的檢測依然靈敏。
  3. 應用程序可以通過高速計算的平板設備移動到其他車輛、電動機車等。無需購買新車即可體驗機器學習的應用功能。

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言